package chapter07

/**
  *
  * @author Pop
  * @date 2022/6/30 23:09
  */
object Test13_SimpleFunction {

  def main(args: Array[String]): Unit = {

      val list1 = List(5,1,3)
    val list3 = List(("d",3),("w",3))

    // 求和
    println(list1.sum)
    // 求乘积
    println(list1.product)
    //最大值
    println(list1.max)
    println(list3.maxBy((t:(String,Int))=>t._2))
    println(list3.maxBy(_._2))
    // 最小值
    println(list1.min)
    println(list3.minBy(_._2))
    //排序
    val sorted: List[Int] = list1.sorted
    //逆序
    println(sorted.reverse)
    // 传入隐式参数，提高性能
    println(list1.sorted(Ordering[Int].reverse))

    println(list3.sortBy(_._2))
    println(list3.sortBy(_._2)(Ordering[Int].reverse))


    // 自定义排序规则
    println(list1.sortWith( (a:Int,b:Int)=>{a<b}))
    println(list1.sortWith( _<_))
    println(list1.sortWith( _>_))
  }

}
